Abstract: A detailed description of a bilateral filter for image processing is given. The method is non-iterative, local, and simple. It combines gray levels based on both their geometric closeness and their photometric similarity and prefers near values to distant values in both domain and range. The distinctive feature of our design concept consists of processing the entire filter window in one-pixel clock cycle. This feature of the kernel-based design is supported by the arrangement of the input data into groups. Additionally, by the exploitation of the separability and the symmetry of one filter component, the complexity of the design is widely reduced. Combining these features, the bilateral filter is implemented as a highly parallelized pipeline with very economical and effective utilization of dedicated resources. Due to the modularity of the filter design, kernels of different sizes can be implemented with low effort using our design and given instructions for scaling. The resulting image quality depends on the chosen filter parameters only. This filter requires a single image or frame to denoise.

Keywords: Bilateral filter, image denoising, real-time processing, register matrix, photometric filter, geometric filter.